/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package entity;

//import entity.enums.VendaStatus;

import java.io.Serializable;
import java.util.Date;

/**
 *
 * @author Daniel
 */
public class Venda implements Serializable{
    private static final long serialVersionUID = 1L;
    private int id;
    private double total;
    private Date datahora;
    //private VendaStatus status;
    private Funcionario funcionario;
    private Cliente cliente;
    private Produto[] produtos;
    

    /**
     * @return the serialVersionUID
     */
    public static long getSerialVersionUID() {
        return serialVersionUID;
    }
    
    /**
     * @return the id
     */
    public int getId() {
        return id;
    }

    /**
     * @param id the id to set
     */
    public void setId(int id) {
        this.id = id;
    }

    /**
     * @return the total
     */
    public double getTotal() {
        return total;
    }

    /**
     * @param total the total to set
     */
    public void setTotal(double total) {
        this.total = total;
    }

    /**
     * @return the datahora
     */
    public Date getDatahora() {
        return datahora;
    }

    /**
     * @param datahora the datahora to set
     */
    public void setDatahora(Date datahora) {
        this.datahora = datahora;
    }

    /**
     * @return the funcionario
     */
    public Funcionario getFuncionario() {
        return funcionario;
    }

    /**
     * @param funcionario the funcionario to set
     */
    public void setFuncionario(Funcionario funcionario) {
        this.funcionario = funcionario;
    }

    /**
     * @return the cliente
     */
    public Cliente getCliente() {
        return cliente;
    }

    /**
     * @param cliente the cliente to set
     */
    public void setCliente(Cliente cliente) {
        this.cliente = cliente;
    }

    /**
     * @return the produtos
     */
    public Produto[] getProdutos() {
        return produtos;
    }

    /**
     * @param produtos the produtos to set
     */
    public void setProdutos(Produto[] produtos) {
        this.produtos = produtos;
    }

    /**
     * @return the status
     */
    //public VendaStatus getStatus() {
    //    return status;
    //}

    /**
     * @param status the status to set
     */
//    public void setStatus(VendaStatus status) {
//        this.status = status;
//    }


    

    /**
     * @param produto to add to produtos
     */
    public void addProdutos(Produto produto) {
        Produto[] temp = new Produto[this.getProdutos().length+1];
        for (int i = 0; i < this.getProdutos().length; i++){
            temp[i] = this.getProdutos()[i];
        }
        temp[temp.length-1] = produto;
        this.setProdutos(temp);
    }



    public Venda(){
        super();
        this.setProdutos(new Produto[0]);
    }

//    @Override
//    public String toString(){
//        return this.getId() + " - " + this.getProdutos().length;
//    }

    





}
